/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.ages.math


abstract class Vector {
//Template for IMMUTABLE vectorclass
  val X,Y,Z:Double = 0
  def plus(v:Vector):Vector
  def minus(v:Vector):Vector
  def mul(v:Vector):Vector
  def dot(d:Double):Vector
  def coords:List[Double]
  def length:Double
  def unit:Vector
  override def toString():String = {
    "("+coords(0)+","+coords(1)+","+coords(2)+")"
  }

}
